// useIndex.ts
import { ref } from "vue";
import { useMapViewer } from "@/composables/useMapViewer";

/**
 * 地图查看器逻辑封装
 * @returns {Object} 包含以下内容：
 *   - viewerContainer: 地图容器DOM引用
 *   - initViewer: 初始化地图方法
 *   - destroyViewer: 销毁地图方法
 */
export const useIndex = () => {
  // 创建对模板中 viewerContainer 的响应式引用
  const viewerContainer = ref<HTMLElement | null>(null);

  /**
   * 从地图功能模块解构方法
   * @see useMapViewer 实现地图核心逻辑
   */
  const { initViewer, destroyViewer } = useMapViewer();

  return {
    viewerContainer, // 暴露给模板使用的容器引用
    initViewer,      // 暴露初始化方法
    destroyViewer    // 暴露清理方法
  };
};